package com.bkgy.modularbx.slip.entity;

import lombok.Data;

import java.time.LocalDateTime;

/**
 * 轧辊打滑分析结果实体类，用于存储轧辊运行过程中的打滑分析数据。
 * 该类包含多个维度的分析指标，包括速度指标、斜率指标、统计指标和结果指标，
 * 用于全面评估轧辊的运行状态和潜在的打滑风险。
 *
 * @author Trae
 * @version 1.0
 */
@Data
public class SlipAnalysisResult {
    /** 轧辊唯一标识符 */
    private String rollId;
    
    /** 轧辊显示名称 */
    private String displayName;
    
    /** 轧辊所属机架区域 */
    private String section;
    
    /** 分析数据的时间戳 */
    private LocalDateTime timestamp;

    /** 速度偏差绝对值的最大值（米/分），表示速度异常的峰值 */
    private float speedDevAbsMax;
    
    /** 速度偏差绝对值的平均值（米/分），反映整体速度稳定性 */
    private float speedDevAbsMean;
    
    /** 轧制前段的平均速度偏差绝对值（米/分），用于分析起始阶段的速度状态 */
    private float speedMeanDevAbsFront;
    
    /** 轧制后段的平均速度偏差绝对值（米/分），用于分析结束阶段的速度状态 */
    private float speedMeanDevAbsRear;

    /** 轧辊速度变化的斜率（米/分²），表示速度变化的快慢程度 */
    private float kSlope;
    
    /** 主传动速度变化的斜率（米/分²），作为速度变化的基准参考 */
    private float kMasterSlope;
    
    /** 轧辊速度斜率与主传动速度斜率的差异，用于判断速度变化的异常程度 */
    private float kDev;

    /** 实际速度下降的时间占比（%），反映速度下降的持续性 */
    private float speedActDownPercent;
    
    /** 速度偏差超过限定值的时间占比（%），用于评估速度异常的频繁程度 */
    private float speedDevPercent;
    
    /** 扭矩数据的方差值（千牛米²），反映扭矩波动的剧烈程度 */
    private float torqueVar;
    
    /** 实际张力的平均值（千牛），用于评估轧制过程中的张力状态 */
    private float tensionActMean;

    /** 是否发生打滑的判定结果 */
    private boolean isSlipping;
    
    /** 
     * 报警类型，用于指示异常状态：
     * - 0：无报警
     * - 1：打滑报警
     * - 2：扭矩异常
     */
    private int alarmType;
}
